// pages/index/detail/detail.js
import {
  queryproductRequest,
  makeorderRequest
} from "./detailApi"
Page({

  /**
   * 页面的初始数据
   */
  data: {
    food: {
      name: "郡肝",
      image: "",
      id: 1,
      price: 10,
    },
    num: 1, //数量
    nowTasteId: 0, //当前口味
    seasoningId: [], //当前配菜
    nowMaturityId: 0, //当前成熟度
    totalPrice: 0,
  },

  // 获取详情
  async queryproduct(id) {
    let requestBody = {
      id: id
    }
    let res = await queryproductRequest(requestBody)
    console.log("详情");
    console.log(res);
    if (res.status) {
      // 口味
      if (res.result.tasteids && res.result.tasteids.length > 0) {
        res.result.tasteids[0].checked = true
        this.setData({
          nowTasteId: res.result.tasteids[0].id
        })
      }
      // 配菜
      if (res.result.seasoningids && res.result.seasoningids.length > 0) {
        res.result.tasteids[0].checked = true
        let newSeasoningid = []
        res.result.seasoningids.forEach(element => {
          element.checked = true
          newSeasoningid.push(element.id + "")
        });
        this.setData({
          seasoningId: newSeasoningid
        })
      }
      // 成熟度
      if (res.result.maturityids && res.result.maturityids.length > 0) {
        res.result.maturityids[0].checked = true
        this.setData({
          nowMaturityId: res.result.maturityids[0].id
        })
      }

      let totalPrice = this.data.num * res.result.price
      this.setData({
        food: res.result,
        totalPrice: totalPrice
      })
    } else {
      console.log("请求失败" + res.result);
    }
  },
  // 下单
  async makeorder() {
    let requestBody = {
      products: [{
        pid: this.data.food.id,
        amount: this.data.num,
        tasteids: this.data.nowTasteId,
        seasoningids: this.data.seasoningId.join(","),
        maturityids: this.data.nowMaturityId
      }]
    }
    let header = {
      "auth-token": wx.getStorageSync("token")
    }
    let res = await makeorderRequest(requestBody, header)
    if (res.status) {
      console.log("下单成功");
      wx.showToast({
        title: '下单成功',
        icon: 'success',
        duration: 1000//持续的时间
      })
    } else {
      console.log("请求失败" + res.result);
      // wx.showToast({
      //   title: '下单失败',
      //   icon: 'error',
      //   duration: 1000//持续的时间
      // })
    }
  },

  // 减
  reduce(e) {
    let newNum = e.currentTarget.dataset.num - 1
    newNum = newNum < 1 ? 1 : newNum
    let totalPrice = newNum * this.data.food.price
    this.setData({
      num: newNum,
      totalPrice: totalPrice
    })
  },

  // 加
  addCart(e) {
    let newNum = e.currentTarget.dataset.num + 1
    let totalPrice = newNum * this.data.food.price
    this.setData({
      num: newNum,
      totalPrice
    })
  },

  // 输入
  proInt(e) {
    let proNum = parseInt(e.detail.value)
    proNum = proNum < 1 ? 1 : proNum
    console.log(proNum);
    let totalPrice = proNum * this.data.food.price
    this.setData({
      num: proNum,
      totalPrice
    })
  },

  // 选择口味
  tasteidsChange(e) {
    // 1 获取单选框中的值
    let value = e.detail.value;
    this.setData({
      nowTasteId: parseInt(value)
    })
  },

  // 选择配菜
  seasoningidsChange(e) {
    // 1 获取复选框中的值
    this.setData({
      seasoningId: e.detail.value
    })
  },

  // 选择口味
  maturityidsChange(e) {
    // 1 获取单选框中的值
    let value = e.detail.value;
    this.setData({
      nowMaturityId: parseInt(value)
    })
  },

  // 选好了
  onTapButton(e) {
    this.makeorder()
  },


  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.queryproduct(18)
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  }
})